iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 24
0
Mobile Development

iOS 工程師要懂的AR 開發,利用ARKit 製作APP系列 第 24

製作一個教育類型的APP part2

  • 分享至 

  • xImage
  •  

上一篇 run() planeDetection 為水平, 接下來將利用從ARSCNViewDelegate protocol獲取到平面資訊

sceneView?.delegate = self

ARPlaneAnchors 將會自動被加到 ARSession anchors 陣列,然後ARSCNView 將會自動將ARPlaneAnchor objects 轉成 SCNNode nodes

extension PortalViewController: ARSCNViewDelegate {
func renderer(_ renderer: SCNSceneRenderer, didAdd node: SCNNode, for anchor: ARAnchor) {
  DispatchQueue.main.async {
    if let planeAnchor = anchor as? ARPlaneAnchor {
      #if DEBUG 
        let debugPlaneNode = createPlaneNode(
          center: planeAnchor.center,
          extent: planeAnchor.extent)
          node.addChildNode(debugPlaneNode)
      #endif
      
} }
} 
}

這個方法會在 ARSCNView 自動增加 ARPlaneAnchor 時被執行, 然後確定被加入的 ARAnchor 為 ARPlaneAnchor, 最後在Debug Mode 下 添加 debugPlaneNode 與 node 在相同位置上


上一篇
製作一個教育類型的APP
下一篇
失敗
系列文
iOS 工程師要懂的AR 開發,利用ARKit 製作APP25
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言